Radix or Patricia trees (tries) are well known specialized data structures based on the tree (trie) that is used to store a set of strings. In contrast with a regular tree, the edges of a Patricia tree are labelled with sequences of characters rather than with single characters. These can be strings of characters, bit strings such as integers, or generally arbitrary sequences of objects in lexicographical order. Structurally, the radix or Patricia tree can be understood as a space-optimized tree where each node having only one child is merged with its child. The result is that every internal node has at least two children. Unlike in regular trees, edges can be labelled with sequences of characters as well as single characters. This typically makes a Patricia tree more efficient for small sets and for sets of strings that share long prefixes.
Patricia trees are commonly used in the searching for and retrieving data in memory, e.g. for performing a look-up function. Patricia trees are sometimes used in Java-based implementations. However, it is generally understood that the efficiency of Patricia trees can degrade as the set being stored becomes large. When storing an ever increasing number of items, the number of objects, e.g. Java objects can become burdensome, which can cause performance degradation, in particular on devices with constrained memory and computing resources.